// ==========================================================================
// GFast自动生成model entity操作代码。
// 生成日期：2024-11-11 20:33:48
// 生成路径: internal/app/system/model/entity/addresses.go
// 生成人：王中阳
// desc:收货地址
// company:云南奇讯科技有限公司
// ==========================================================================

package entity

import (
	"github.com/gogf/gf/v2/os/gtime"
	"github.com/gogf/gf/v2/util/gmeta"
)

// Addresses is the golang structure for table addresses.
type Addresses struct {
	gmeta.Meta     `orm:"table:addresses"`
	Id             int                     `orm:"id,primary" json:"id"` //
	Userid         int                     `orm:"userid" json:"userid"` // 用户id
	LinkedUserid   *LinkedAddressesUsers   `orm:"with:id=userid" json:"linkedUserid"`
	Name           string                  `orm:"name" json:"name"`          // 姓名
	Phone          string                  `orm:"phone" json:"phone"`        // 手机号
	SchoolId       int                     `orm:"school_id" json:"schoolId"` // 学校id
	LinkedSchoolId *LinkedAddressesSchools `orm:"with:id=school_id" json:"linkedSchoolId"`
	Addr           string                  `orm:"addr" json:"addr"`            // 地图选点地址
	Detail         string                  `orm:"detail" json:"detail"`        // 详细地址
	AddrName       string                  `orm:"addr_name" json:"addrName"`   // 粘贴板内容
	Lat            string                  `orm:"lat" json:"lat"`              // 经度
	Lng            string                  `orm:"lng" json:"lng"`              // 纬度
	IsDel          int                     `orm:"is_del" json:"isDel"`         // 是否删除
	IsDefault      int                     `orm:"is_default" json:"isDefault"` // 是否默认
	CreatedAt      *gtime.Time             `orm:"created_at" json:"createdAt"` //
	UpdatedAt      *gtime.Time             `orm:"updated_at" json:"updatedAt"` //
}

type LinkedAddressesUsers struct {
	gmeta.Meta `orm:"table:users"`
	Id         int    `orm:"id" json:"id"`             //
	Username   string `orm:"username" json:"username"` //
}

type LinkedAddressesSchools struct {
	gmeta.Meta `orm:"table:schools"`
	Id         int    `orm:"id" json:"id"`                 //
	Schoolname string `orm:"schoolname" json:"schoolname"` //
}
